#ifndef _LIBGH_
#define _LIBGH_

#include "typ.h"
#include "libliste.h"
#include "libtas.h"

TypGraphe* creerGraphe(int nbSommet);

void supprimerGraphe(TypGraphe** graphe);

int sortieGraphe(char* flux, TypGraphe* graphe);

TypGraphe* lectureGraphe(char* fichier);

int insertionSommet(TypGraphe* graphe, int sommet);

int insertionAreteOriente(TypGraphe* graphe, int depart, int arrivee, double poids);

int insertionArete(TypGraphe* graphe, int s1, int s2, double poids);

int supprimeArete(TypGraphe* graphe, int s1, int s2);

int supprimeSommet(TypGraphe* graphe, int s);

int supprimeAreteOriente(TypGraphe* graphe, int depart, int arrivee);

double getPoidsArete(TypGraphe* graphe,int voisin1, int voisin2);

TypArete* getArete(TypGraphe* graphe, int voisin1, int voisin2);

TypGraphe* arpm(TypGraphe* graphe);


#endif
